package com.pur.zsms.supplier.dao;

import java.util.List;

import com.pur.zsms.common.exception.GenericException;
import com.pur.zsms.common.support.PageController;
import com.pur.zsms.common.support.PaginationSupport;
import com.pur.zsms.matermanage.mater.po.MaterLevelPo;
import com.pur.zsms.ordercustommanage.po.OrderCustPo;
import com.pur.zsms.ordercustommanage.po.OrderSupplierMaterPo;
import com.pur.zsms.ordercustommanage.vo.OrderCustFoodVo;
import com.pur.zsms.ordercustommanage.vo.OrderCustVo;
import com.pur.zsms.ordercustommanage.vo.OrderSupplierMaterVo;
import com.pur.zsms.ordercustommanage.vo.OrderSupplierVo;

public interface SupplierMaterOrderDao {
	public PaginationSupport listSupplierOrder(PageController pageController, OrderSupplierVo supplierOrderVo)
	        throws GenericException;

	public PaginationSupport listSupperOrderDetailed(PageController pageController,
	        OrderSupplierMaterVo orderSupplierMaterVo, String oid) throws GenericException;

	/**
	 * 直接购买材料的 详细查询页面的 所有数据
	 */
	public PaginationSupport listMaterToMaterDetailed(PageController pageController,
	        OrderSupplierMaterVo orderSupplierMaterVo, String oid) throws GenericException;

	public PaginationSupport findMatertoMaterDetailedReal(PageController pageController,
	        OrderSupplierMaterVo orderSupplierMaterVo, String oid) throws GenericException;

	/**
	 * 直接购买材料的 审核详细查询页面的 所有数据
	 */
	public PaginationSupport listSelectMaterDetailed(PageController pageController,
	        OrderSupplierMaterVo orderSupplierMaterVo, String oid) throws GenericException;

	public PaginationSupport listCustOrderDetailed(PageController pageController,
	        OrderSupplierMaterVo orderSupplierMaterVo, String oid, String supId) throws GenericException;

	public List<Object[]> rowslistCustOrderDetailed(String oid, String supId) throws GenericException;

	public PaginationSupport listSelectFoodDetailed(PageController pageController,
	        OrderCustFoodVo orderCustFoodVo, String oid) throws GenericException;

	public void addOrderSupplierMater(OrderSupplierMaterPo po) throws GenericException;

	public List<OrderSupplierMaterPo> getOrderCust(String ordId, String ordMaterId, String ordSupId)
	        throws GenericException;

	public MaterLevelPo getMaterLevelByMaterId(int materId, String level) throws GenericException;

}
